package com.sc.nft.entity;

import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sc.nft.enums.CdkActivityGenerateEnum;
import com.sc.nft.enums.GasConsumeTypeEnum;
import com.sc.nft.enums.ProductCdkTypeEnum;
import com.sc.nft.enums.RedemptionCodeRuleEnum;
import com.sc.nft.sup.SuperEntity;

import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * CDK活动(sc_cdk_activity_info)实体类
 *
 * @author Sun
 * @since 2023-03-29 11:26:13
 * @description 由 Mybatisplus Code Generator 创建
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sc_cdk_activity_info")
public class CdkActivityInfo extends SuperEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 标题
     */
    private String activityTitle;
    /**
     * 描述
     */
    private String activityDescription;
    /**
     * 描述
     */
    private Integer cdkCount;
    /**
     * 开始时间
     */
    private Date beginTime;
    /**
     * 商品id
     */
    private Long productId;
    /**
     * 类型: 1:NFT商品 2:权益道具
     */
    private ProductCdkTypeEnum productType;
    /**
     * 结束时间
     */
    private Date endTime;
    /**
     * 是否生成cdk 0:否 1:是
     */
    private CdkActivityGenerateEnum isGenerate;

    /**
     * 商品名称
     */
    private String firstTitle;
    /**
     * 商品名称
     */
    private String creationContent;

    /**
     * daoId
     */
    private Long daoId;

    /**
     * 兑换码名称
     */
    private String redemptionCode;

    /**
     * 兑换码生成总量
     */
    private Integer redemptionTotal;

    /**
     * 生成规则
     */
    private RedemptionCodeRuleEnum redemptionCodeRule;

    /**
     * 剩余数量
     */
    private Integer remainingQuantity;

    /**
     * 用户使用上限
     */
    private Integer userUseLimit;
    
    /**
     * 是否配置上链费
     */
    private Boolean gasConf;
    
    /**
     * 消耗类型
     */
    private GasConsumeTypeEnum consumeType;
    
    /**
     * 消耗额度
     */
    private BigDecimal consumeCost;
    
}
